import 'package:json_annotation/json_annotation.dart';

part 'musicRangeModel.g.dart';


@JsonSerializable()
class MusicRangeModel extends Object{

  @JsonKey(name: 'code')
  int code;

  @JsonKey(name: 'message')
  String message;

  @JsonKey(name: 'result')
  List<Result> result;

  MusicRangeModel(this.code,this.message,this.result,);

  factory MusicRangeModel.fromJson(Map<String, dynamic> srcJson) => _$MusicRangeModelFromJson(srcJson);

}


@JsonSerializable()
class Result extends Object{

  @JsonKey(name: 'bg_color')
  String bgColor;

  @JsonKey(name: 'bg_pic')
  String bgPic;

  @JsonKey(name: 'color')
  String color;

  @JsonKey(name: 'comment')
  String comment;

  @JsonKey(name: 'content')
  List<Content> content;

  @JsonKey(name: 'count')
  int count;

  @JsonKey(name: 'name')
  String name;

  @JsonKey(name: 'pic_s192')
  String picS192;

  @JsonKey(name: 'pic_s210')
  String picS210;

  @JsonKey(name: 'pic_s260')
  String picS260;

  @JsonKey(name: 'pic_s444')
  String picS444;

  @JsonKey(name: 'type')
  int type;

  @JsonKey(name: 'web_url')
  String webUrl;

  Result(this.bgColor,this.bgPic,this.color,this.comment,this.content,this.count,this.name,this.picS192,this.picS210,this.picS260,this.picS444,this.type,this.webUrl,);

  factory Result.fromJson(Map<String, dynamic> srcJson) => _$ResultFromJson(srcJson);

}


@JsonSerializable()
class Content extends Object {

  @JsonKey(name: 'album_id')
  String albumId;

  @JsonKey(name: 'album_title')
  String albumTitle;

  @JsonKey(name: 'all_rate')
  String allRate;

  @JsonKey(name: 'author')
  String author;

  @JsonKey(name: 'biaoshi')
  String biaoshi;

  @JsonKey(name: 'pic_big')
  String picBig;

  @JsonKey(name: 'pic_small')
  String picSmall;

  @JsonKey(name: 'rank_change')
  String rankChange;

  @JsonKey(name: 'song_id')
  String songId;

  @JsonKey(name: 'title')
  String title;

  Content(this.albumId,this.albumTitle,this.allRate,this.author,this.biaoshi,this.picBig,this.picSmall,this.rankChange,this.songId,this.title,);

  factory Content.fromJson(Map<String, dynamic> srcJson) => _$ContentFromJson(srcJson);

}


